x86/64: Make BIOS call to declare our intention to enter long mode.
authorKeir Fraser <keir.fraser@citrix.com>
Thu, 14 Feb 2008 11:24:49 +0000 (11:24 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Thu, 14 Feb 2008 11:24:49 +0000 (11:24 +0000)
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen/arch/x86/boot/trampoline.S

index 2c92dc6a000ee7084bb02dbe15ddd5c5c00e0590..143612c91f9f820c505436e50174cbea436ceeb6 100644 (file)
@@ -155,6 +155,13 @@ trampoline_boot_cpu_entry:
         lidt    bootsym(rm_idt)
         sti
 
+#if defined(__x86_64__)
+        /* Declare that our target operating mode is long mode. */
+        movw    $0xec00,%ax      # declare target operating mode
+        movw    $0x0002,%bx      # long mode
+        int     $0x15
+#endif
+
         /*
          * Do real-mode work:
          *  1. Get memory map.